/**
 * 指纹识别
 */

/* eslint-disable */

function isFingerSupport() {
    // 检查是否支持指纹识别
    if (plus.fingerprint) {
        if (!plus.fingerprint.isSupport()) {
            // '此设备不支持指纹识别'
            return false;
        }
        if (!plus.fingerprint.isKeyguardSecure()) {
            // '此设备未设置密码锁屏，无法使用指纹识别'
            return false;
        }
        if (!plus.fingerprint.isEnrolledFingerprints()) {
            // '此设备未录入指纹，请到设置中开启'
            return false;
        }
        // '此设备支持指纹识别'
        return true;
    } else {
        // '当前环境不支持指纹识别API，请更新到最新版本'
        return false;
    }
}

function authenticate() {
    return new Promise((resolve, reject) => {
        try {
            plus.fingerprint.authenticate(function () {
                plus.nativeUI.closeWaiting();//兼容Android平台关闭等待框
                resolve(1);// 成功
            }, function (e) {
                switch (e.code) {
                    case e.AUTHENTICATE_MISMATCH:
                        plus.nativeUI.toast('指纹匹配失败，请重新输入');
                        break;
                    case e.AUTHENTICATE_OVERLIMIT:
                        plus.nativeUI.closeWaiting();//兼容Android平台关闭等待框
                        plus.nativeUI.alert('指纹识别失败次数超出限制，请使用其它方式进行认证');
                        break;
                    default:
                        plus.nativeUI.closeWaiting();//兼容Android平台关闭等待框
                        plus.nativeUI.alert('指纹识别失败(' + e.code + ')，请重试');
                        break;
                }
            });
            // Android平台弹出等待提示框
            if ('Android' === plus.os.name) {
                plus.nativeUI.showWaiting('指纹识别中...');
            }
        } catch (e) {
            reject(e.toString());
        }
        if (!isFingerSupport()) resolve(0);
    });
}

export default {}